The present invention relates to transaction availability in application or integration server requests to a backend server, and more specifically relates to protecting in-flight transaction requests.
A large number of clients (for example, browsers or applications on mobile computing devices, tablet computing devices, or personal computers, etc.) send requests to an application or integration server, which in turn accesses a database server for data query and/or update. The database server may be, in general, any backend server.
From a high availability point of view, the database server is usually considered highly available through data replication. That is, the database is mirrored to another site, usually called a disaster recovery (DR) site. A single application/integration server constitutes a single point of failure—if it fails, the whole system becomes unavailable to the clients.
A conventional approach to this availability problem is to provide redundancy of the application/integration server.
In one configuration, a workload balancer distributes requests between two (or more) instances of the application/integration server. This is called an Active-Active configuration; though Active-Passive is also possible. Should one application/integration server instance fail, the other application/integration server instance starts receiving all client requests, so the service remains available.